window.onload = function() {

    !(function($) {
        "use strict"; //使用严格标准
        // 获取表单元素
        var FormValidator = function() {
            this.$projectForm = $("#register");
        };
        // 初始化
        FormValidator.prototype.init = function() {
            this.$projectForm.validate({
                // 验证规则
                rules: {
                    username: {
                        required: true
                    },
                    email: {
                        required: true
                    },
                    pwd: {
                        required: true
                    },
                    repwd: {
                        required: true
                    }
                },
                // 提示信息
                messages: {
                    username: {
                        required: '用户名为必填项'
                    },
                    email: {
                        required: '邮箱为必填项'
                    },
                    pwd: {
                        required: '密码为必填项'
                    },
                    repwd: {
                        required: '请再次输入密码'
                    }
                },
                ignore: ' ' //  注意！注意！ 加上这句，能给隐藏字段做验证！
            });
        };
        $.FormValidator = new FormValidator;
        $.FormValidator.Constructor = FormValidator;
    })(window.jQuery),
        function($) {
            "use strict";
            $.FormValidator.init();
        }(window.jQuery);


    //用户名
    let $name = $('.name');
    //邮箱
    let $email = $('.email');
    //密码
    let $pwd = $('.pwd');
    //确认密码
    let $pwd2 = $('.pwd2');


    //用户名失去焦点时进行验证
    $name.blur(function() {
        //用户名文本框的内容
        let name = $.trim($('.name').val());
        if (name == null || name == "") {
            $('.namewarning').text('用户名不能为空！')
        } else if (name.length > 10) {
            $('.namewarning').text('用户名长度不得超过十位！')
        }
    })

    // 用户名输入框获取焦点时,提示文字全部清空
    $name.focus(function() {
        $('.namewarning').text('')
    })




    //邮箱失去焦点时进行验证
    $email.blur(function() {
        //邮箱文本框的内容
        let email = $email.val();
        if (email == null || email == "") {
            $('.emailwarning').text('邮箱不能为空！')
        } else if (email.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1) {
            $('.emailwarning').text('')
        } else {
            $('.emailwarning').text('请输入正确的邮箱格式！')
        }
    })

    // 用户名输入框获取焦点时,提示文字全部清空
    $email.focus(function() {
        $('.emailwarning').text('')
    })


    //密码失去焦点时进行验证
    $pwd.blur(function() {
        //密码文本框的内容
        let pwd = $pwd.val();
        if (pwd == null || pwd == "") {
            $('.pwdwarning').text('密码不能为空！')
        } else if (pwd.length > 20) {
            $('.pwdwarning').text('密码长度不得超过20位！')
        }
    })

    // 密码输入框获取焦点时,提示文字全部清空
    $pwd.focus(function() {
        $('.pwdwarning').text('')
    })


    //确认密码失去焦点时进行验证
    $pwd2.blur(function() {
        //密码文本框的内容
        let pwd = $('.pwd').val();
        //确认密码文本框的内容
        let pwd2 = $pwd2.val();
        if (pwd == pwd2) {
            $('.pwdwarning2').text('');
        } else {
            $('.pwdwarning2').text('两次输入密码不一致');
        }
    })

    // 确认密码输入框获取焦点时,提示文字全部清空
    $pwd2.focus(function() {
        $('.pwdwarning2').text('')
    })



}